GraphLinksModel

StockSharp.Xaml.Diagram.GXDiagram.Model

ノードとサブグラフで構成される図モデルの汎用実装。2つのノード間のリンクを表す任意の数の明示的なリンクデータ。

継承元: DiagramModel

実装: ILinksModel, IDiagramModel, ISubGraphLinksModel, ISubGraphModel, IGroupsModel

コンストラクター

GraphLinksModel
public GraphLinksModel()
graphLinksModel = GraphLinksModel()

デフォルトのコンストラクタは空のモデルを生成します。

プロパティ

GroupNodePath
public string GroupNodePath { get; set; }
value = graphLinksModel.GroupNodePath
graphLinksModel.GroupNodePath = value

ノードのデータオブジェクトの「コンテナ」またはグループノードのデータのキーを取得する方法を指定するプロパティパスを取得します。

LinkCategoryPath
public string LinkCategoryPath { get; set; }
value = graphLinksModel.LinkCategoryPath
graphLinksModel.LinkCategoryPath = value

リンクデータのカテゴリを見つける方法を指定するプロパティパスを取得します。

LinkFromParameterPath
public string LinkFromParameterPath { get; set; }
value = graphLinksModel.LinkFromParameterPath
graphLinksModel.LinkFromParameterPath = value

リンクデータオブジェクトの「から」ノードデータに対して、オプションの「port」パラメータ情報を取得するか、または、プロパティパスを取得または設定します。

LinkFromPath
public string LinkFromPath { get; set; }
value = graphLinksModel.LinkFromPath
graphLinksModel.LinkFromPath = value

リンクデータオブジェクトの「から」ノードデータのキーを取得する方法を指定するプロパティパスを取得します。

LinkLabelNodePath
public string LinkLabelNodePath { get; set; }
value = graphLinksModel.LinkLabelNodePath
graphLinksModel.LinkLabelNodePath = value

リンクデータオブジェクトの「ラベル」ノードデータのキーを取得する方法を指定するプロパティパスを取得します。

LinksSource
public IEnumerable LinksSource { get; set; }
value = graphLinksModel.LinksSource
graphLinksModel.LinksSource = value

モデルのリンクデータ項目の収集またはセットを取得します。

LinkToParameterPath
public string LinkToParameterPath { get; set; }
value = graphLinksModel.LinkToParameterPath
graphLinksModel.LinkToParameterPath = value

リンクデータオブジェクトの「to」ノードデータに対して、オプションの「port」パラメータ情報を取得するか、または、プロパティパスを取得または設定します。

LinkToPath
public string LinkToPath { get; set; }
value = graphLinksModel.LinkToPath
graphLinksModel.LinkToPath = value

リンクデータオブジェクトの「to」ノードのデータを取得する方法を指定するプロパティパスを取得します。

MemberNodesPath
public string MemberNodesPath { get; set; }
value = graphLinksModel.MemberNodesPath
graphLinksModel.MemberNodesPath = value

グループノードのデータオブジェクトの「member」ノードのキーの一覧を取得するか、プロパティパスを取得またはセットします。

NodeCategoryPath
public string NodeCategoryPath { get; set; }
value = graphLinksModel.NodeCategoryPath
graphLinksModel.NodeCategoryPath = value

ノードデータのカテゴリを見つける方法を指定するプロパティパスを取得するか、または設定します。

NodeIsGroupPath
public string NodeIsGroupPath { get; set; }
value = graphLinksModel.NodeIsGroupPath
graphLinksModel.NodeIsGroupPath = value

ノードのデータが「コンテナ」グループであるかを調べる方法を指定するプロパティパスを取得するか、または設定します。

NodeIsLinkLabelPath
public string NodeIsLinkLabelPath { get; set; }
value = graphLinksModel.NodeIsLinkLabelPath
graphLinksModel.NodeIsLinkLabelPath = value

ノードのデータがリンクデータに対して「ラベル」であるかを調べる方法を指定するプロパティパスを取得するか、または設定します。

NodeKeyIsNodeData
public bool NodeKeyIsNodeData { get; set; }
value = graphLinksModel.NodeKeyIsNodeData
graphLinksModel.NodeKeyIsNodeData = value

すべてのノードのデータが独自のキーであるかを取得またはセットします。

NodeKeyPath
public string NodeKeyPath { get; set; }
value = graphLinksModel.NodeKeyPath
graphLinksModel.NodeKeyPath = value

ノードのデータを取得する方法を指定するプロパティパスを取得またはセットします。

NodeKeyReferenceAutoInserts
public bool NodeKeyReferenceAutoInserts { get; set; }
value = graphLinksModel.NodeKeyReferenceAutoInserts
graphLinksModel.NodeKeyReferenceAutoInserts = value

NodeKeyIsNodeDataが真の場合、参照がNodesSourceに自動的に差し込みます。

NodesSource
public IEnumerable NodesSource { get; set; }
value = graphLinksModel.NodesSource
graphLinksModel.NodesSource = value

モデルのノードデータ項目のコレクションを取得またはセットします。

ValidCycle
public ValidCycle ValidCycle { get; set; }
value = graphLinksModel.ValidCycle
graphLinksModel.ValidCycle = value

どのような種類のグラフを指定して、このモデルが許可します。

メソッド

AddCollectionCopy(GraphLinksModel{, GraphLinksModel{) : CopyDictionary<T, T, T, T>

既存のノードをコピーしてデータをリンクし、このモデルに追加します。

coll
コピーされるデータの収集
env
コピーされたオブジェクトの追跡を保ち続けるために ICopyDictionary を使用しました。null なら、このメソッドは CreateCopyDictionaryを呼び出し、それを使用し、それを返します

戻り値: 更新されたコピー辞書、元のデータをコピーしたデータをマッピング

AddLinkCopy
public LinkType AddLinkCopy(LinkType linkdata)
result = graphLinksModel.AddLinkCopy(linkdata)

リンクデータをこのモデルにコピーします。

linkdata

戻り値: コピーされたリンクデータ

AddMemberNodeKey
public void AddMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.AddMemberNodeKey(nodedata, memberkey)

「members」ノードのデータのキー値を「members」のノードデータのリストに追加します。

nodedata
ノードデータを変更する
memberkey
新しい「member」ノードデータのキー値
AddNode
public void AddNode(NodeType nodedata)
graphLinksModel.AddNode(nodedata)

ノードデータを@NodesSource@に追加します。

nodedata
AddNodeCopy
public NodeType AddNodeCopy(NodeType nodedata)
result = graphLinksModel.AddNodeCopy(nodedata)

このモデルにノードデータのコピーを追加します。

nodedata

戻り値: コピーされたノードのデータ

AugmentCopyCollection(GraphLinksModel{)

コピーするデータを追加するために、このメソッドをオーバーライドします。

coll
コピーされるデータの収集
AugmentCopyDictionary(GraphLinksModel{)

データをコピーしたり、コピーされた参照を解決する方法を変更するには、このメソッドをオーバーライドします。

env
オブジェクトをコピーする辞書マッピング
ChangeDataValue
protected override void ChangeDataValue(ModelChangedEventArgs e, bool undo)
graphLinksModel.ChangeDataValue(e, undo)

ステートがモデルデータに変化する状態に影響するのに対し、これは undo または redo の間に呼び出されます。

e
変更を記述する編集は、実行する
undo
行方不明の場合、 再発した場合の false
ChangeModelValue
protected override void ChangeModelValue(ModelChangedEventArgs e, bool undo)
graphLinksModel.ChangeModelValue(e, undo)

つまり、このモデルに対する状態の変化を生じさせるための undo や redo の間に呼び出されます。

e
変更を記述する編集は、実行する
undo
行方不明の場合、 再発した場合の false
CheckLinkValid
protected virtual bool CheckLinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam, bool ignoreexistinglink, LinkType oldlinkdata)
result = graphLinksModel.CheckLinkValid(fromdata, fromparam, todata, toparam, ignoreexistinglink, oldlinkdata)

2つのノード/ポート間のリンクを追加すると、この述語は、有効な構造のグラフになります。

fromdata
ノードキーは、リンクが来るノードデータを識別します。
fromparam
リンクが接続される「から」ノードのポートを識別するオプションの値
todata
ノードキーは、リンクが進むノードデータを識別します。
toparam
リンクが接続される「to」ノードのポートを識別するオプションの値
ignoreexistinglink
再リンクする場合 true; 新規リンクを追加する場合は false
oldlinkdata
変更される可能性のある元のリンクデータ、真の場合

戻り値: このページの先頭の動作は、ValidCycleと ValidUnconnectedLinksの値をValidUnconnectedLinksに変えるものです。

CheckMemberValid
protected virtual bool CheckMemberValid(NodeType groupnodedata, NodeType membernodedata, bool ignoreexistingmembership)
result = graphLinksModel.CheckMemberValid(groupnodedata, membernodedata, ignoreexistingmembership)

ノードをグループノードに追加すると、この述語は無効なグラフになります。

groupnodedata
グループであるノードデータ
membernodedata
グループに追加するノードデータ
ignoreexistingmembership
既存のグループメンバーを無視するかどうか、そのメンバーは既存のグループから退出しているからです。

戻り値: グループのツリー構造を破るメンバーに対して、この false を返します。

ClearUnresolvedReferences
public void ClearUnresolvedReferences()
graphLinksModel.ClearUnresolvedReferences()

未解決の遅延やフォワードの参照を全て忘れます。

CopyLink1(T, GraphLinksModel{) : T

これは、リンクデータをコピーする最初のパスです。コピーを構成し、そのプロパティのほとんどをコピーする責任があります。

linkdata
env
オブジェクトをコピーする辞書マッピング

戻り値: コピーされたリンクデータ

CopyLink2(T, GraphLinksModel{, T, T, T, T)

これは、リンクデータをコピーする2番目のパスです。他のオブジェクトへの参照を修正する責任があります。

oldlinkdata
オリジナルリンクデータ
env
オブジェクトをコピーする辞書マッピング
newlinkdata
コピーされたリンクデータ
newfromnodedata
利便性のために、コピーされた "from" ノード
newtonodedata
利便性のために、コピーされた "to" ノード
newlinklabel
利便性のために、コピーされた「ラベル」ノード
CopyNode1(T, GraphLinksModel{) : T

これは、ノードデータをコピーする最初のパスです。コピーを構成し、そのプロパティのほとんどをコピーする責任があります。

nodedata
env
オブジェクトをコピーする辞書マッピング

戻り値: コピーされたノードのデータ

CopyNode2(T, GraphLinksModel{, T, T, IEnumerable<T>)

これは、ノードデータをコピーする2番目のパスです。他のオブジェクトへの参照を修正する責任があります。

oldnodedata
元のノードデータ
env
オブジェクトをコピーする辞書マッピング
newnodedata
コピーされたノードのデータ
newgroup
利便性のために、コピーされた「親」ノードデータ
newmembers
利便性のため、新しくコピーされたメンバーノードのリスト
CreateCopyDictionary
public virtual CopyDictionary<NodeType, NodeKey, PortKey, LinkType> CreateCopyDictionary()
result = graphLinksModel.CreateCopyDictionary()

このモデルのICopyDictionaryを初期化しました。

戻り値: 通常は空の辞書になります。

CreateDataCollection
public virtual DataCollection<NodeType, NodeKey, PortKey, LinkType> CreateDataCollection()
result = graphLinksModel.CreateDataCollection()

このモデルのIDataCollection@を空に作成します。

CreateInitializedCopy(GraphLinksModel{) : GraphLinksModel<T, T, T, T>

NodesSourceまたは LinksSourceコレクションを共有することなく、このモデルのコピーを作成します。

init
初期ノードとリンクデータを提供するDataCollectionです。(Suchデータはコピーされません。) nullの場合、初期NodesSourceとLinksSource@は空のコレクションです。

戻り値: 同じモデルですが、異なるデータで

DeleteMemberNodeKey
protected virtual void DeleteMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DeleteMemberNodeKey(nodedata, memberkey)

このメソッドは、実際にノードデータの修正を実装し、子ノードデータの収集に指定されたノードは含まれません。

nodedata
ノードのデータを変更します。null の場合、このメソッドは何もしません。
memberkey
"member" ノードデータのキー値。null なら、このメソッドは何もしない
DeleteNode
protected virtual void DeleteNode(NodeType nodedata)
graphLinksModel.DeleteNode(nodedata)

このメソッドは、NodesSourceコレクションからノードデータを実際に削除する。

nodedata
DoGroupNodeChanged
public void DoGroupNodeChanged(NodeType nodedata)
graphLinksModel.DoGroupNodeChanged(nodedata)

ノードデータのグループ内でのメンバーシップが変更された場合、これは呼び出されるべきです。

nodedata
変更されたノードのデータ
DoLinkAdded
public void DoLinkAdded(LinkType linkdata)
graphLinksModel.DoLinkAdded(linkdata)

リンク先のデータオブジェクトがLinksSourceコレクションに追加されると呼びます。

linkdata
DoLinkCategoryChanged
public void DoLinkCategoryChanged(LinkType linkdata)
graphLinksModel.DoLinkCategoryChanged(linkdata)

リンクデータのカテゴリ値が変更された場合、これは呼び出されるべきです。

linkdata
DoLinkLabelChanged
public void DoLinkLabelChanged(LinkType linkdata)
graphLinksModel.DoLinkLabelChanged(linkdata)

リンクデータのラベルノードが変更された場合、これは呼び出されるべきです。

linkdata
DoLinkPortsChanged
public void DoLinkPortsChanged(LinkType linkdata)
graphLinksModel.DoLinkPortsChanged(linkdata)

リンクデータの接続ノードまたはポートが「から」または「to」のいずれかに変更されたときに呼び出されるべきです。

linkdata
DoLinkRemoved
public void DoLinkRemoved(LinkType linkdata)
graphLinksModel.DoLinkRemoved(linkdata)

リンク先のデータオブジェクトがLinksSourceコレクションから削除されると呼び出される。

linkdata
DoMemberNodeKeyAdded
public void DoMemberNodeKeyAdded(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DoMemberNodeKeyAdded(nodedata, memberkey)

「member」ノードキーのコレクションに「member」ノードのデータキーが追加されたときに呼び出されるべきです。

nodedata
変更されたノードのデータ
memberkey
ノードのデータを追加したキー
DoMemberNodeKeyRemoved
public void DoMemberNodeKeyRemoved(NodeType nodedata, NodeKey memberkey)
graphLinksModel.DoMemberNodeKeyRemoved(nodedata, memberkey)

「member」ノードキーのコレクションから「member」ノードのデータキーが削除されたときに呼び出されるべきです。

nodedata
変更されたノードのデータ
memberkey
削除された「member」ノードのデータのキー
DoMemberNodeKeysChanged
public void DoMemberNodeKeysChanged(NodeType nodedata)
graphLinksModel.DoMemberNodeKeysChanged(nodedata)

ノードのデータが「member」ノードの一覧が置換されたときに呼び出されるべきです。

nodedata
DoNodeAdded
public void DoNodeAdded(NodeType nodedata)
graphLinksModel.DoNodeAdded(nodedata)

ノードのデータオブジェクトが@NodesSourceコレクションに追加されると呼び出されるはずです。

nodedata
DoNodeCategoryChanged
public void DoNodeCategoryChanged(NodeType nodedata)
graphLinksModel.DoNodeCategoryChanged(nodedata)

ノードデータのカテゴリの値が変更された場合、これは呼び出されるべきです。

nodedata
DoNodeKeyChanged
public void DoNodeKeyChanged(NodeType nodedata)
graphLinksModel.DoNodeKeyChanged(nodedata)

ノードデータのキー値が変更された場合、これは呼び出されるべきです。

nodedata
DoNodeRemoved
public void DoNodeRemoved(NodeType nodedata)
graphLinksModel.DoNodeRemoved(nodedata)

ノードのデータオブジェクトがNodesSourceコレクションから削除されると呼び出されるはずです。

nodedata
FindCategoryForNode
protected virtual string FindCategoryForNode(NodeType nodedata)
result = graphLinksModel.FindCategoryForNode(nodedata)

ノードデータのカテゴリを検索します。

nodedata

戻り値: デフォルトでは空の文字列

FindGroupKeyForNode
protected virtual NodeKey FindGroupKeyForNode(NodeType nodedata)
result = graphLinksModel.FindGroupKeyForNode(nodedata)

ノードのデータにグループノードキーを含んだものを見つけます。

nodedata

戻り値: を含むグループノードの、またはそのタイプのデフォルト値の場合、ノードのコンテナノードがない場合

FindIsGroupForNode
protected virtual bool FindIsGroupForNode(NodeType nodedata)
result = graphLinksModel.FindIsGroupForNode(nodedata)

ノードのデータが他のノードのグループまたはコンテナであるかを確認します。

nodedata
FindIsLinkLabelForNode
protected virtual bool FindIsLinkLabelForNode(NodeType nodedata)
result = graphLinksModel.FindIsLinkLabelForNode(nodedata)

ノードのデータがリンクデータに対して「ラベル」であるかどうかを確認します。

nodedata
FindKeyForNode
protected virtual NodeKey FindKeyForNode(NodeType nodedata)
result = graphLinksModel.FindKeyForNode(nodedata)

ノードデータのキーを見つけます。

nodedata

戻り値: このモデルの指定したノードデータ(hopefully) 固有のキー

FindMemberNodeKeysForNode
protected virtual IEnumerable FindMemberNodeKeysForNode(NodeType nodedata)
result = graphLinksModel.FindMemberNodeKeysForNode(nodedata)

ノードのデータオブジェクトの子ノードのキーのリストを見つけます。

nodedata

戻り値: 子鍵のリスト、IEnumerableの

FindNodeByKey
public NodeType FindNodeByKey(NodeKey key)
result = graphLinksModel.FindNodeByKey(key)

キーを与えられたら、そのキーでノードデータを見つけます。

key
この引数の null の値がデフォルト値になります。

戻り値: ; そのようなノードデータがこのモデルに存在しなければ、値が型に対してデフォルトになります

GetCategoryForNode
public string GetCategoryForNode(NodeType nodedata)
result = graphLinksModel.GetCategoryForNode(nodedata)

このメソッドはノードのカテゴリを取得します。

nodedata

戻り値: 文字列、空の文字列にデフォルト

GetConnectedNodesForNode
public IEnumerable<NodeType> GetConnectedNodesForNode(NodeType nodedata, Predicate<PortKey> portpred)
result = graphLinksModel.GetConnectedNodesForNode(nodedata, portpred)

ノードに直接接続するノードのデータを、いずれかの方向に返します。

nodedata
portpred
各ポートパラメータに適用される述語。非nullの場合、この述語は、ノードが戻り値に含まれているように真でなければなりません。

戻り値: IEnumerable の

GetConnectedNodesForNode
public IEnumerable<NodeType> GetConnectedNodesForNode(NodeType nodedata)
result = graphLinksModel.GetConnectedNodesForNode(nodedata)

ノードに直接接続するノードのデータを、いずれかの方向に返します。

nodedata

戻り値: IEnumerable の

GetFromLinksForNode
public IEnumerable<LinkType> GetFromLinksForNode(NodeType nodedata)
result = graphLinksModel.GetFromLinksForNode(nodedata)

特定のノードデータで連結されるリンクデータのシーケンスを返します。指定されたノードにのみ移動します。

nodedata

戻り値: IEnumerable の

GetFromNodesForNode
public IEnumerable<NodeType> GetFromNodesForNode(NodeType nodedata)
result = graphLinksModel.GetFromNodesForNode(nodedata)

特定のノードにリンクすることによって直接接続されるノードデータのシーケンスを返します。

nodedata

戻り値: IEnumerable の

GetFromNodesForNode
public IEnumerable<NodeType> GetFromNodesForNode(NodeType nodedata, Predicate<PortKey> toportpred)
result = graphLinksModel.GetFromNodesForNode(nodedata, toportpred)

特定のノードにリンクすることによって直接接続されるノードデータのシーケンスを返します。

nodedata
toportpred
ポートパラメータに「to」のポートパラメーターをそれぞれ適用する述語。非nullの場合、この述語は「から」ノードが返されたシーケンスに含まれるように真でなければなりません。

戻り値: IEnumerable の

GetGroupForNode
public NodeType GetGroupForNode(NodeType nodedata)
result = graphLinksModel.GetGroupForNode(nodedata)

指定したノードのデータに対して、コンテナグループノードデータを1つある場合を返します。

nodedata

戻り値: ノードデータ

GetHasLabeledLinkForNode
public bool GetHasLabeledLinkForNode(NodeType nodedata)
result = graphLinksModel.GetHasLabeledLinkForNode(nodedata)

この述語は、リンクデータに「ラベル」として関連づけていると、ノードデータに対しては真正です。

nodedata
GetIsGroupForNode
public bool GetIsGroupForNode(NodeType nodedata)
result = graphLinksModel.GetIsGroupForNode(nodedata)

指定したノードのデータが他のノードのグループ(i.e. )の場合、この述語は真です。

nodedata
GetIsLinkLabelForNode
public bool GetIsLinkLabelForNode(NodeType nodedata)
result = graphLinksModel.GetIsLinkLabelForNode(nodedata)

指定したノードデータをリンクの「ラベル」として利用する場合に、この述語は真です。

nodedata
GetLabeledLinkForNode
public LinkType GetLabeledLinkForNode(NodeType nodedata)
result = graphLinksModel.GetLabeledLinkForNode(nodedata)

指定したノードデータを「ラベル」として参照するリンクデータを取得します。

nodedata

戻り値: リンクデータ

GetLinksBetweenNodes
public IEnumerable<LinkType> GetLinksBetweenNodes(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.GetLinksBetweenNodes(fromdata, fromparam, todata, toparam)

1つのノードから別のノードに移動するすべてのリンクデータのシーケンスを返す、特定の「ポート」に制限される可能性があります。

fromdata
ノードキーは、リンクが来るノードデータを識別します。
fromparam
リンクが接続される「から」ノードのポートを識別するオプションの値
todata
ノードキーは、リンクが進むノードデータを識別します。
toparam
リンクが接続される「to」ノードのポートを識別するオプションの値

戻り値: IEnumerable の

GetLinksForNode
public IEnumerable<LinkType> GetLinksForNode(NodeType nodedata)
result = graphLinksModel.GetLinksForNode(nodedata)

ノードのデータで連結されるリンクデータのシーケンスを返します。

nodedata

戻り値: IEnumerable の

GetLinksForNode
public IEnumerable<LinkType> GetLinksForNode(NodeType nodedata, Predicate<LinkType> predicate)
result = graphLinksModel.GetLinksForNode(nodedata, predicate)

特定のノードデータで連結されるリンクデータのシーケンスを返します。どちらの方向でも、指定された述語を満たすことができます。

nodedata
predicate
引数として取り、 boolean を返す delegate

戻り値: IEnumerable の

GetMemberLinksForGroup
public IEnumerable<LinkType> GetMemberLinksForGroup(NodeType nodedata)
result = graphLinksModel.GetMemberLinksForGroup(nodedata)

特定のノードデータに含まれるリンクデータのシーケンスを返します。

nodedata

戻り値: メンバーリンクデータのIEnumerable; 会員リンクがない場合の空のシーケンス

GetMemberNodesForGroup
public IEnumerable<NodeType> GetMemberNodesForGroup(NodeType nodedata)
result = graphLinksModel.GetMemberNodesForGroup(nodedata)

特定のノードデータの即時メンバーであるノードデータのシーケンスを返します。

nodedata

戻り値: 会員ノードのデータの IEnumerable; 会員がいない場合、空のシーケンス

GetNodeType
public Type GetNodeType()
result = graphLinksModel.GetNodeType()

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

戻り値: ノードのデータオブジェクトではなく、文字列型

GetToLinksForNode
public IEnumerable<LinkType> GetToLinksForNode(NodeType nodedata)
result = graphLinksModel.GetToLinksForNode(nodedata)

特定のノードデータで連結されるリンクデータのシーケンスを返します。指定されたノードからのみ出ます。

nodedata

戻り値: IEnumerable の

GetToNodesForNode
public IEnumerable<NodeType> GetToNodesForNode(NodeType nodedata, Predicate<PortKey> fromportpred)
result = graphLinksModel.GetToNodesForNode(nodedata, fromportpred)

特定のノードから出てきたリンクから直接接続されるノードデータのシーケンスを返します。

nodedata
fromportpred
"from" ポートパラメータごとに、 指定された述語 を ' ポートパラメーター に 適用する。 null でないと、 戻り値に "to" ノードが含まれている必要があります。

戻り値: IEnumerable の

GetToNodesForNode
public IEnumerable<NodeType> GetToNodesForNode(NodeType nodedata)
result = graphLinksModel.GetToNodesForNode(nodedata)

特定のノードから出てきたリンクから直接接続されるノードデータのシーケンスを返します。

nodedata

戻り値: IEnumerable の

HandleLinkPropertyChanged
protected virtual void HandleLinkPropertyChanged(object sender, PropertyChangedEventArgs e)
graphLinksModel.HandleLinkPropertyChanged(sender, e)

このページは、リンクデータに関するINotifyPropertyChangedイベントハンドラです。

sender
e
変更と方法を説明するModelChangedEventArgsを優先的に
HandleNodePropertyChanged
protected virtual void HandleNodePropertyChanged(object sender, PropertyChangedEventArgs e)
graphLinksModel.HandleNodePropertyChanged(sender, e)

ノードデータ用のINotifyPropertyChangedイベントハンドラです。

sender
e
変更と方法を説明するModelChangedEventArgsを優先的に
InsertMemberNodeKey
protected virtual void InsertMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.InsertMemberNodeKey(nodedata, memberkey)

このメソッドは、実際にノードデータの修正を実装し、メンバーノードのデータが与えられたノードを含むようにします。

nodedata
ノードのデータを変更します。null の場合、このメソッドは何もしません。
memberkey
新しい「member」ノードのデータのキー値。null なら、このメソッドは何もしない
InsertNode
protected virtual void InsertNode(NodeType nodedata)
graphLinksModel.InsertNode(nodedata)

このメソッドは、実際に、ノードデータの追加をNodesSourceコレクションに実装しています。

nodedata
IsEqualPortParameters
protected virtual bool IsEqualPortParameters(PortKey a, PortKey b)
result = graphLinksModel.IsEqualPortParameters(a, b)

この述語は2つの値を比較し、"equal" の場合にtrueを返す。

a
b

戻り値: 通常、このタイプはデフォルトEqualityComparerを使用します。ただし、その種類の平等比較がポート情報に不適切である場合は、このメソッドをオーバーライドする必要があります。

IsLinkData
public bool IsLinkData(LinkType linkdata)
result = graphLinksModel.IsLinkData(linkdata)

このモデルの引数がリンクデータの場合、この述語は真です。

linkdata
このモデルの既知のリンクデータであるかどうかを確認するオブジェクト

戻り値: true if the is in the LinksSource

IsLinked
public bool IsLinked(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.IsLinked(fromdata, fromparam, todata, toparam)

ノードのデータ/ポートから別のノードへリンクがある場合、この述語は真です。

fromdata
ノードキーは、リンクが来るノードデータを識別します。
fromparam
リンクが接続される「から」ノードのポートを識別するオプションの値
todata
ノードキーは、リンクが進むノードデータを識別します。
toparam
リンクが接続される「to」ノードのポートを識別するオプションの値
IsLinkType
public bool IsLinkType(object linkdata)
result = graphLinksModel.IsLinkType(linkdata)

. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .

戻り値: 型、リンクデータオブジェクトではなく、文字列

IsLinkValid
public bool IsLinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam)
result = graphLinksModel.IsLinkValid(fromdata, fromparam, todata, toparam)

2つのノード/ポート間でリンクを追加すると、有効なグラフが生成されます。

fromdata
ノードキーは、リンクが来るノードデータを識別します。
fromparam
リンクが接続される「から」ノードのポートを識別するオプションの値
todata
ノードキーは、リンクが進むノードデータを識別します。
toparam
リンクが接続される「to」ノードのポートを識別するオプションの値
IsMember
public bool IsMember(NodeType groupnodedata, NodeType membernodedata)
result = graphLinksModel.IsMember(groupnodedata, membernodedata)

コンテナグループのメンバーである場合、この述語は真です。

groupnodedata
membernodedata
IsMemberValid
public bool IsMemberValid(NodeType groupnodedata, NodeType membernodedata, bool ignoreexistingmembership)
result = graphLinksModel.IsMemberValid(groupnodedata, membernodedata, ignoreexistingmembership)

グループノード()に追加すると、この述語は無効なグラフになります。

groupnodedata
グループであるノードデータ
membernodedata
ノードデータ
ignoreexistingmembership
既存のグループメンバーを無視するかどうか、そのメンバーは既存のグループから退出しているからです。
IsNodeData
public bool IsNodeData(NodeType nodedata)
result = graphLinksModel.IsNodeData(nodedata)

このモデルの引数がノードデータの場合、この述語は真です。

nodedata
このモデルの既知のノードデータであるかどうかを確認するオブジェクト

戻り値: true if the is in the NodesSource

IsNodeType
public bool IsNodeType(object nodedata)
result = graphLinksModel.IsNodeType(nodedata)

この述語は引数が . のインスタンスであるとき真です。

nodedata
任意のオブジェクトは、ノードデータであることの互換性をチェックする

戻り値: ; にキャストできる場合 true それ以外の場合は false

IsRelinkValid
public bool IsRelinkValid(NodeType fromdata, PortKey fromparam, NodeType todata, PortKey toparam, LinkType oldlinkdata)
result = graphLinksModel.IsRelinkValid(fromdata, fromparam, todata, toparam, oldlinkdata)

2つのノード/ポート間のリンクを置換すると、有効なグラフが生成されると、この述語は真になります。

fromdata
ノードキーは、リンクが来るノードデータを識別します。
fromparam
リンクが接続される「から」ノードのポートを識別するオプションの値
todata
ノードキーは、リンクが進むノードデータを識別します。
toparam
リンクが接続される「to」ノードのポートを識別するオプションの値
oldlinkdata
変更される可能性のある元のリンクデータ
Load``2
public void Load<NodeDataType, LinkDataType>(XContainer root, XName nodename, XName linkname)
graphLinksModel.Load(root, nodename, linkname)

XML XContainer の保持ノードとリンクデータを Linq にすると、このモデルの NodesSourceと LinksSourceのコレクションに新しいノードのデータと新しいリンクデータのコレクションが組み込まれています。

root
データの全てのXContainerを保持
nodename
各XElement保持ノードのデータの名前
linkname
各XElement保持リンクデータの名称
Load``2
public void Load<NodeDataType, LinkDataType>(XContainer root, Func<XElement, NodeDataType> nodedataallocator, Func<XElement, LinkDataType> linkdataallocator)
graphLinksModel.Load(root, nodedataallocator, linkdataallocator)

XML XContainer の保持ノードとリンクデータを Linq にすると、このモデルの NodesSourceと LinksSourceのコレクションに新しいノードのデータと新しいリンクデータのコレクションが組み込まれています。

root
データの全てのXContainerを保持
nodedataallocator
XElement を取り、XElement が無視されると、新たに構成された型または null のオブジェクトを返す関数
linkdataallocator
XElement を取り、XElement が無視されると、新たに構成された型または null のオブジェクトを返す関数
MakeNodeKeyUnique
protected virtual bool MakeNodeKeyUnique(NodeType nodedata)
result = graphLinksModel.MakeNodeKeyUnique(nodedata)

重複したキーが見つからられたとき、このメソッドは呼び出されます。

nodedata

戻り値: つまり、モデルにキーを一意にしてしまった後に、データをノードとして受け入れること。このデータを無視するために false を。

ModifyGroupNodeKey
protected virtual void ModifyGroupNodeKey(NodeType nodedata, NodeKey groupkey)
graphLinksModel.ModifyGroupNodeKey(nodedata, groupkey)

このメソッドは、ノードデータの修正を実際に実装し、グループノードのデータ(もしあれば)を参照する。

nodedata
ノードデータを変更する
groupkey
「グループ」ノードデータのキー値
ModifyLinkFromPort
protected virtual void ModifyLinkFromPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.ModifyLinkFromPort(linkdata, nodekey, portparam)

このメソッドは、実際にリンクデータの修正を実装し、「から」ノードのデータと「から」ポート情報への参照を変更します。

linkdata
変更されるリンクデータ
nodekey
新しいノードのデータ
portparam
ModifyLinkLabelKey
protected virtual void ModifyLinkLabelKey(LinkType linkdata, NodeKey linklabelkey)
graphLinksModel.ModifyLinkLabelKey(linkdata, linklabelkey)

このメソッドは、実際にリンクデータの修正を実装し、「ラベル」ノードのデータへの参照を変更します。

linkdata
変更されるリンクデータ
linklabelkey
新しいラベルデータ
ModifyLinkToPort
protected virtual void ModifyLinkToPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.ModifyLinkToPort(linkdata, nodekey, portparam)

この方法は、実際にリンクデータの修正を実装し、「to」ノードのデータと「to」ポート情報への参照を変更します。

linkdata
変更されるリンクデータ
nodekey
新しいノードのデータ
portparam
ModifyMemberNodeKeys
protected virtual void ModifyMemberNodeKeys(NodeType nodedata, IEnumerable membernodekeys)
graphLinksModel.ModifyMemberNodeKeys(nodedata, membernodekeys)

このメソッドは、実際にグループノードのデータ収集のノードキーの置換を実行します。

nodedata
ノードデータを変更する
membernodekeys
「member」ノードのデータキーの値のシーケンス
RemoveMemberNodeKey
public void RemoveMemberNodeKey(NodeType nodedata, NodeKey memberkey)
graphLinksModel.RemoveMemberNodeKey(nodedata, memberkey)

子ノードのデータのキー値をグループノードのデータのリストから削除します。

nodedata
ノードデータを変更する
memberkey
「member」ノードデータのキー値
RemoveNode
public void RemoveNode(NodeType nodedata)
graphLinksModel.RemoveNode(nodedata)

NodesSource からノードデータを削除します。

nodedata
ResolveAllReferences
public void ResolveAllReferences()
graphLinksModel.ResolveAllReferences()

原因@ResolveNodeKey(各既定の遅延または前方ノード参照で呼び出される)。

ResolveNodeKey
protected virtual void ResolveNodeKey(NodeKey nodekey)
graphLinksModel.ResolveNodeKey(nodekey)

既知の遅延やノード参照を転送するたびに、ResolveAllReferences によって繰り返し呼び出されます。

nodekey
Save``2
public XElement Save<NodeDataType, LinkDataType>(XName rootname, XName nodename, XName linkname)
result = graphLinksModel.Save(rootname, nodename, linkname)

ノードのXElementを保有し、データをリンクするLinqを生成します。

rootname
返されたXElementの名前
nodename
各XElement保持ノードのデータの名前
linkname
各XElement保持リンクデータの名称

戻り値: XElementの

SetGroupNodeKey
public void SetGroupNodeKey(NodeType nodedata, NodeKey groupkey)
graphLinksModel.SetGroupNodeKey(nodedata, groupkey)

ノードデータを変更して、ノードキーで異なるコンテナグループノードデータを参照します。

nodedata
ノードデータを変更する
groupkey
新しい「グループ」ノードデータのキー値
SetLinkFromPort
public void SetLinkFromPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.SetLinkFromPort(linkdata, nodekey, portparam)

リンクデータを変更して、ノードのデータと関連するポート情報と異なる「から」を参照します。

linkdata
変更されるリンクデータ
nodekey
新しいノードのデータ
portparam
SetLinkLabelKey
public void SetLinkLabelKey(LinkType linkdata, NodeKey linklabelkey)
graphLinksModel.SetLinkLabelKey(linkdata, linklabelkey)

リンクデータを変更して、異なる「ラベル」ノードデータを参照します。

linkdata
変更されるリンクデータ
linklabelkey
新しいラベルデータ
SetLinkToPort
public void SetLinkToPort(LinkType linkdata, NodeKey nodekey, PortKey portparam)
graphLinksModel.SetLinkToPort(linkdata, nodekey, portparam)

リンクデータを変更して、ノードのデータと関連するポート情報を異なる「to」に参照します。

linkdata
変更されるリンクデータ
nodekey
新しいノードのデータ
portparam
SetMemberNodeKeys
public void SetMemberNodeKeys(NodeType nodedata, IEnumerable membernodekeys)
graphLinksModel.SetMemberNodeKeys(nodedata, membernodekeys)

ノードのデータのリストを「member」キーの値に置き換えます。

nodedata
ノードデータを変更する
membernodekeys
「member」ノードのデータキーの値のシーケンス